#include <windows.h>
#include <initguid.h>
#include <com.h>

DEFINE_GUID(CLSID_UpdateInstaller,   0xd2e0fe7f, 0xd23e, 0x48e1, 0x93, 0xc0, 0x6f, 0xa8, 0xcc, 0x34, 0x64, 0x74);
DEFINE_GUID(IID_IUpdateInstaller,    0x7b929c68, 0xccdc, 0x4226, 0x96, 0xb1, 0x87, 0x24, 0x60, 0x0b, 0x54, 0xc2);
DEFINE_GUID(IID_IUpdateInstaller4,   0xef8208ea, 0x2304, 0x492d, 0x91, 0x09, 0x23, 0x81, 0x3b, 0x09, 0x58, 0xe1);

DEFINE_GUID(CLSID_AutomaticUpdates,  0xbfe18e9c, 0x6d87, 0x4450, 0xb3, 0x7c, 0xe0, 0x2f, 0x0b, 0x37, 0x38, 0x03);
DEFINE_GUID(IID_IAutomaticUpdates,   0x673425bf, 0xc082, 0x4c7c, 0xbd, 0xfd, 0x56, 0x9e, 0xd4, 0x53, 0x17, 0xc5);

DEFINE_GUID(CLSID_SystemInformation, 0xc01b9ba0, 0xbea7, 0x41ba, 0xb6, 0x04, 0xd0, 0xa3, 0x6f, 0x46, 0x91, 0x33);
DEFINE_GUID(IID_ISystemInformation,  0xada74191, 0x3b75, 0x4b40, 0x9b, 0xd8, 0x7f, 0x29, 0x30, 0x7b, 0xb7, 0xa5);

interface ISystemInformation;
interface IAutomaticUpdates;
interface IUpdateInstaller4;

EXTERN_C const GUID IID_ISystemInformation;
EXTERN_C const GUID IID_IAutomaticUpdates;
EXTERN_C const GUID IID_IUpdateInstaller4;

DEFINE_UUIDOF(ISystemInformation, IID_ISystemInformation);
DEFINE_UUIDOF(IAutomaticUpdates,  IID_IAutomaticUpdates);
DEFINE_UUIDOF(IUpdateInstaller4,  IID_IUpdateInstaller4);
